Complete distributed garbage collection using DGC-consistent cuts and .NET AOP-support
نویسندگان
چکیده
The memory management of distributed objects, when done manually, is an error-prone task. It leads to memory leaks and dangling references, causing applications to fail. Avoiding such errors requires automatic memory management, called distributed garbage collection (DGC). Current DGC solutions are either not safe, not complete or not portable to widely used platforms such as .NET. As a matter of fact, most solutions either run on specialised environments or require modifications of the underlying virtual machine (e.g. rotor, common language runtime (CLR)), hindering its immediate and widespread utilisation. This study describes the design, architecture, implementation and performance measurements of a DGC algorithm for .NET that: (i) is complete, that is, capable of reclaiming both acyclic and cyclic garbage, while (ii) being portable in the sense that it neither requires the underlying virtual machine to be modified, nor source or byte-code modification. The distributed garbage collector was implemented on top of two implementations of the common language infrastructure (.NET virtual machine specification): CLR and shared source CLI, commonly known as Rotor. The implementation requires no modification of the environment, it makes use of the provided aspect-oriented functionalities, and the performance results are encouraging.
منابع مشابه
Extending .NET Remoting with Distributed Garbage Collection
The memory management of distributed objects, when done manually, is an error-prone task. It leads to memory leaks and dangling references causing applications to fail. Avoiding such errors requires automatic memory management, named distributed garbage collection (DGC). Current DGC solutions are either not safe, not complete or not portable to widely used platforms such as .NET. As a matter of...
متن کاملDistributed Garbage Collection for Wide Area Replicated Memory
It is well known that distributed systems pose serious difficulties concerning memory management: when done manually, it leads to memory leaks and dangling references causing applications to fail. We address this problem by presenting a distributed garbage collection (DGC) algorithm for distributed systems supporting replicated data over wide area networks. Current DGC algorithms are not well s...
متن کاملRecent Advances in Distributed Garbage Collection
1 Why Distributed Garbage Collection Dynamically-allocated memory must eventually be reclaimed. But manual reclamation is error-prone, and if an object is de-allocated prematurely, a program that later follows a pointer to it might behave incorrectly. Instead, garbage collection (GC) automatically reclaims objects that can no longer be reached by any path of pointers. In a distributed system, a...
متن کاملTowards Distributed Garbage Collection in Distributed Real-Time Java
Java’s RMI (Remote Method Invocation) offers many facilities useful for a distributed application programmer. One of them is distributed garbage collection (DGC) that removes unreachable remote objects. Unfortunately, from the point of view of distributed real-time Java applications, DGC is underspecified (i.e., it may introduce unwanted interference on real-time remote invocations). Some resea...
متن کاملUSENIX Association Proceedings of the 6 th USENIX Conference on Object - Oriented Technologies and Systems ( COOTS ' 01 )
It is well known that distributed systems pose serious diÆculties concerning memory management: when done manually, it leads to memory leaks and dangling references causing applications to fail. We address this problem by presenting a distributed garbage collection (DGC) algorithm for distributed systems supporting replicated data over wide area networks. Current DGC algorithms are not well sui...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید
ثبت ناماگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید
ورودعنوان ژورنال:
- IET Software
دوره 1 شماره
صفحات -
تاریخ انتشار 2007